﻿/**
 * jQuery :  城市联动插件
 * @author   XiaoDong <cssrain@gmail.com>
 *			 http://www.cssrain.cn
 * @example  $("#test").ProvinceCity();
 * @params   暂无
 */
var myIndex="0";
function eq(a,b,c){

	if (a==b){
		myIndex=c;
		return "selected='selected'"
	}else {
		return "";
	}
}
$.fn.ProvinceCity = function(address){

	var _self = this;
	//定义3个默认值

	_self.data("province",["请选择", "请选择"]);
	_self.data("city",["请选择", "请选择"]);
	_self.data("county",["请选择", "请选择"]);


	//插入3个空的下拉框
	_self.append("<select datatype='/[^请选择]/i'  errormsg='请选择城市' id='add_province'  class='input-text'></select>");
	_self.append("<select datatype='/[^请选择]/i' errormsg='请选择城市' id='add_city'  class='input-text'></select>");
	_self.append("<select datatype='/[^请选择]/i' errormsg='请选择城市' id='add_county'  class='input-text'></select>");
	//分别获取3个下拉框
	var $sel1 = _self.find("select").eq(0);
	var $sel2 = _self.find("select").eq(1);
	var $sel3 = _self.find("select").eq(2);
	//默认省级下拉
	if(_self.data("province")){

			$sel1.append("<option value='"+_self.data("province")[1]+"'>"+_self.data("province")[0]+"</option>");

	}
	$.each( GP , function(index,data){

		$sel1.append("<option "+eq(address.province,data,index)+"   value='"+data+"'>"+data+"</option>");
	});
	//默认的市级城市下拉
	if(_self.data("city")){
		$sel2.append("<option value='"+_self.data("city")[1]+"'>"+_self.data("city")[0]+"</option>");
	}
	//默认的县级城市下拉
	if(_self.data("county")){
			$sel3.append("<option value='"+_self.data("county")[1]+"'>"+_self.data("county")[0]+"</option>");


	}

	//省级联动 控制
	var index1 = "" ;
	$sel1.change(function (){
		//清空其它2个下拉框
		$sel2[0].options.length=0;
		$sel3[0].options.length=0;
		index1 = this.selectedIndex;
		if(index1==0){	//当选择的为 “请选择” 时
			if(_self.data("city")){
				$sel2.append("<option value='"+_self.data("city")[1]+"'>"+_self.data("city")[0]+"</option>");
			}
			if(_self.data("county")){
				$sel3.append("<option value='"+_self.data("county")[1]+"'>"+_self.data("county")[0]+"</option>");
			}
		}else{

			console.info(index1)
			$.each( GT[index1-1] , function(index,data){
				$sel2.append("<option "+eq(address.city,data,index)+"  value='"+data+"'>"+data+"</option>");
				
			});
			$.each( GC[index1-1][myIndex] , function(index,data){
				$sel3.append("<option "+eq(address.county,data,index)+" value='"+data+"'>"+data+"</option>");
				
			})
		}
	}).change();
	//1级城市联动 控制
	var index2 = "" ;
	
	index2=$sel2.selectedIndex;
	console.info(index2)

	$sel2.change(function(){
		$sel3[0].options.length=0;
		index2 = this.selectedIndex;
		
		console.info(index2)
		$.each( GC[index1-1][index2] , function(index,data){
			$sel3.append("<option "+eq(address.county,data)+" value='"+data+"'>"+data+"</option>");
		})
	});
	return _self;
};
